﻿Public Interface ICardsFactory

  ''' <summary>
  ''' fires when the factory is ready. Factory should not fire the event before Configure has been called.
  ''' </summary>
  Event CardsReady(ByVal sender As Object, ByVal e As EventArgs)

  ''' <summary>
  ''' get additional configuration parameters
  ''' </summary>
  Sub Configure(ByVal params As IDictionary(Of String, String))

  ''' <summary>
  ''' create the cards for use in the game. The cards should be unique: the twin cards
  ''' will be created by the game itself.
  ''' </summary>
  Function GetUniqueCards() As IList(Of Card)

End Interface
